﻿/////////////////////////////////////////////////////////////////////////////////
///              ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO                   ///
///                        PROYECTO INTEGRADOR IV                             /// 
///                         PROYECTO SICOPS 2011                              /// 
/// ------------------------------------------------------------------------- ///  
///              **********GRUPO DE DESARROLLADORES**********                 ///
///                    ************PEGASO*************                        /// 
///---------------------------------------------------------------------------///
///                                                         RIOBAMBA-ECUADOR  ///
///---------------------------------------------------------------------------///
///       CLASE DE ADMINISTRACION DE LA TABLA ASIGNACION SERVICIOS            ///
/////////////////////////////////////////////////////////////////////////////////

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Windows.Forms;
using System.Data.Common;
using System.Drawing;
//Clse de administracion de la asignacion de servicios
namespace LogisticaDeAcceso.ClasesDeAcceso
{
   public class clsAsignacionServicios
    {

        private SqlCommand SqlProSeleccionar;
        private SqlConnection SqlProConexion;
        private SqlDataAdapter SqlProAdaptador;
      /// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
      /// //////////////////////////////////Metodo de configuracion para mostrar los pedido registrados/////////////////////
     
        public void metConfigurarMostrarPedidos(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "SELECT     vs_MostrarPedidosRegServicios.*\r\nFROM         vs_MostrarPedidosRegServ" +
                "icios";
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
          
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
        /// //////////////////////////////////Metodo de activacion para mostrar los pedido registrados/////////////////////
        public void metActivarMostrarPedidos(ColeccionDeDatos Col)
        {
            SqlProAdaptador.Fill(Col.vs_MostrarPedidosRegServicios);
        }
       /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        /// //////////////////////////////////Metodo de configuracion para mostrar los Servicios registrados/////////////////////

        public void metConfigurarMostrarServicios(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // SqlProConexion
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            //
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_MostrarNumPedidoServicios";
            this.SqlProSeleccionar.CommandType = CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            this.SqlProSeleccionar.Parameters.AddRange(new SqlParameter[] {
            new SqlParameter("@RETURN_VALUE", SqlDbType.Int, 4, ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", DataRowVersion.Current, null),
            new SqlParameter("@Numero", SqlDbType.VarChar, 3)});
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
        /// //////////////////////////////////Metodo de activacion para mostrar los Servicios registrados////////////////////

        public void metActivarMostrarServicios(ColeccionDeDatos Col,string Num)
        { 
        SqlProAdaptador.SelectCommand.Parameters["@Numero"].Value=Num;
        SqlProAdaptador.Fill(Col.sp_MostrarNumPedidoServicios);
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        /// //////////////////////////////////Metodo de configuracion para el ingreso de servicios en un pedido/////////////////////

        public void metConfigurarIngresoAsigServicio(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();

            // SqlProConexion
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_IngresarAsignacionServicios";
            this.SqlProSeleccionar.CommandType = CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            //Declaracion de los parametro de del procedimiento
            this.SqlProSeleccionar.Parameters.AddRange(new SqlParameter[] {
            new SqlParameter("@RETURN_VALUE", SqlDbType.Int, 4, ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", DataRowVersion.Current, null),
            new SqlParameter("@CodReg", SqlDbType.VarChar, 8),
            new SqlParameter("@CodProv", SqlDbType.VarChar, 10),
            new SqlParameter("@Mod", SqlDbType.VarChar, 100),
            new SqlParameter("@Observ", SqlDbType.VarChar, 100),
            new SqlParameter("@Fecha", SqlDbType.DateTime, 8),
            new SqlParameter("@Estado", SqlDbType.VarChar, 30),
            new SqlParameter("@FechaCum", SqlDbType.DateTime, 8)});
            // 
        
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
        /// //////////////////////////////////Metodo de activacion para el ingreso de servicios en un pedido/////////////////////
        public void metActivarIngresoAsigServicio(string CodReg, string CodProv, string Mod, string Observ, string Fecha, string Estado, string FechaCum)
        {
            SqlProAdaptador.SelectCommand.Parameters["@CodReg"].Value = CodReg;//////Ingreso del codigo registro
            SqlProAdaptador.SelectCommand.Parameters["@CodProv"].Value = CodProv;////codigo del proveedor
            SqlProAdaptador.SelectCommand.Parameters["@Mod"].Value = Mod;////////////Modalidad economica
            SqlProAdaptador.SelectCommand.Parameters["@Observ"].Value = Observ;//////Observacion del registro
            SqlProAdaptador.SelectCommand.Parameters["@Fecha"].Value = Fecha;////////Fecha de la asignacion
            SqlProAdaptador.SelectCommand.Parameters["@Estado"].Value = Estado;//////Estado de la asignacion
            SqlProAdaptador.SelectCommand.Parameters["@FechaCum"].Value = FechaCum;//Fecha del cumplimiento
            SqlProConexion.Open();///////////////////////////////////////////////////Abrir la coneccion
            try
            {
                SqlProAdaptador.SelectCommand.ExecuteNonQuery();//Ejecuta el procedmiento almacenado
            }
            catch (Exception M)
            {
                MessageBox.Show(M.Message);//Aqui se presenta los mensajes que la ejecucion del metodo 
                //haya generado 
            }
            SqlProConexion.Close();//Es importante cerrar la coneccion para evitar embotellamientos
        }

        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        /// //////////////////////////////////Metodo de configuracion para ver todos los datos referentes a un determinado servicio/////////////////////
        public void metConfigurarPedidosEnRegSer(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();

            // SqlProConexion
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "SELECT     vs_MostrarPedidosRegServicios.*\r\nFROM         vs_MostrarPedidosRegServ" +
                "icios";
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            // 

            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }  
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        /// //////////////////////////////////Metodo de activacion para ver todos los datos referentes a un determinado servicio/////////////////////
        public void metActivarPedidosEnRegSer(ColeccionDeDatos Col)
        {
            SqlProAdaptador.Fill(Col.vs_MostrarPedidosRegServicios);
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public void metConfigurarMostrarServciosAsignados(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "SELECT        vs_MostrarServiciosAsignados.*\r\nFROM            vs_MostrarServicios" +
                "Asignados";
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
                    // 
        }

        public void metActivarMostrarServiciosAsignados(ColeccionDeDatos Col)
        {
            SqlProAdaptador.Fill(Col.vs_MostrarServiciosAsignados);
        }
       //Presentar la lista de servciois asignados

        public void metConfigurarListaServiciosAsignados(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_MostarServiciosAsignados";
            this.SqlProSeleccionar.CommandType = System.Data.CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            this.SqlProSeleccionar.Parameters.AddRange(new System.Data.SqlClient.SqlParameter[] {
            new System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", System.Data.DataRowVersion.Current, null),
            new System.Data.SqlClient.SqlParameter("@Codigo", System.Data.SqlDbType.VarChar, 20)});
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;          
            // 
        }
       //Ejecutar
        public void metActivarListaServiciosAsignados(string Codigo,ColeccionDeDatos Col)
        {
            SqlProAdaptador.SelectCommand.Parameters["@Codigo"].Value = Codigo;
            SqlProAdaptador.Fill(Col.sp_MostarServiciosAsignados);
        
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Modificacion de asignaciones

        public void metConfigurarActualizarAsignacion(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_ActualizarCancelarServicio";
            this.SqlProSeleccionar.CommandType = System.Data.CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            this.SqlProSeleccionar.Parameters.AddRange(new System.Data.SqlClient.SqlParameter[] {
            new System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", System.Data.DataRowVersion.Current, null),
            new System.Data.SqlClient.SqlParameter("@Codigo", System.Data.SqlDbType.VarChar, 20),
            new System.Data.SqlClient.SqlParameter("@Numero", System.Data.SqlDbType.VarChar, 9),
            new System.Data.SqlClient.SqlParameter("@Obs", System.Data.SqlDbType.VarChar, 200)});
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
       //Ejecucion
        public void metActivarActualizarAsignacion(string Codigo, string Numero, string Obs)
        {

            SqlProAdaptador.SelectCommand.Parameters["@Codigo"].Value = Codigo;//////Codigo de asignacion
            SqlProAdaptador.SelectCommand.Parameters["@Numero"].Value = Numero;//////Numero de pedido
            SqlProAdaptador.SelectCommand.Parameters["@Obs"].Value = Obs;////////////Observacion de la cancelacion
            SqlProConexion.Open();///////////////////////////////////////////////////Abrir la coneccion
            try
            {
                SqlProAdaptador.SelectCommand.ExecuteNonQuery();//Ejecuta el procedmiento almacenado
            }
            catch (Exception M)
            {
                MessageBox.Show(M.Message);//Aqui se presenta los mensajes que la ejecucion del metodo 
                //haya generado 
            }
            SqlProConexion.Close();//Es importante cerrar la coneccion para evitar embotellamientos
      
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        //Registros de servicios pendientes
        public void metConfigurarAsigServPendientes(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "SELECT        vs_MostarAsignacionesServicosPendientes.*\r\nFROM            vs_Mosta" +
                "rAsignacionesServicosPendientes";
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
       //Ejecucion

        public void metActivarAsigServPendientes(ColeccionDeDatos Col)
        {
            SqlProAdaptador.Fill(Col.vs_MostarAsignacionesServicosPendientes);
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Ingresar registro

        public void metConfigurarIngresoServicio(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_ActualizarIngresoServicio";
            this.SqlProSeleccionar.CommandType = System.Data.CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            this.SqlProSeleccionar.Parameters.AddRange(new System.Data.SqlClient.SqlParameter[] {
            new SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", System.Data.DataRowVersion.Current, null),
            new SqlParameter("@Codigo", System.Data.SqlDbType.VarChar, 25)});
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
       //Ejecutar
        public void metActivarIngresoServicio(string Codigo)
        {
            SqlProAdaptador.SelectCommand.Parameters["@Codigo"].Value = Codigo;//////Codigo de asignacion        
            SqlProConexion.Open();///////////////////////////////////////////////////Abrir la coneccion
                SqlProAdaptador.SelectCommand.ExecuteNonQuery();//Ejecuta el procedmiento almacenado
                SqlProConexion.Close();//Es importante cerrar la coneccion para evitar embotellamientos
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Cambiar el estado de los registros

        public void metConfigurarRegistrosActivos(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProAdaptador = new SqlDataAdapter();
            this.SqlProConexion = new SqlConnection();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "SELECT        vs_MostrarRegistrosServiciosActivos.*\r\nFROM            vs_MostrarRegistrosServiciosActivos";
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
        }
       //Ejecucion
        public void metActivarRegistrosActivos(ColeccionDeDatos Col)
        {
            SqlProAdaptador.Fill(Col.vs_MostrarRegistrosServiciosActivos);
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        //Eliminacion de registros
        public void metConfigurarEliminraRegSer(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_EliminarRegistroServicios";
            this.SqlProSeleccionar.CommandType = System.Data.CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            this.SqlProSeleccionar.Parameters.AddRange(new System.Data.SqlClient.SqlParameter[] {
            new SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", System.Data.DataRowVersion.Current, null),
            new SqlParameter("@Codigo", System.Data.SqlDbType.VarChar, 30)});
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
       //Ejecucion
        public void metActivarEliminarRegSer(string Codigo)
        {
            SqlProAdaptador.SelectCommand.Parameters["@Codigo"].Value = Codigo;////////////Observacion de la cancelacion
            SqlProConexion.Open();///////////////////////////////////////////////////Abrir la coneccion
            try
            {
                SqlProAdaptador.SelectCommand.ExecuteNonQuery();//Ejecuta el procedmiento almacenado
            }
            catch (Exception M)
            {
                MessageBox.Show(M.Message);//Aqui se presenta los mensajes que la ejecucion del metodo 
                //haya generado 
            }
            SqlProConexion.Close();//Es importante cerrar la coneccion para evitar embotellamientos
      
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Configuracion de estdos
        public void metConfigurarActualizarEstado(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProConexion = new SqlConnection();
            this.SqlProAdaptador = new SqlDataAdapter();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "dbo.sp_ActualizarServicosRegistrados";
            this.SqlProSeleccionar.CommandType = System.Data.CommandType.StoredProcedure;
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            this.SqlProSeleccionar.Parameters.AddRange(new System.Data.SqlClient.SqlParameter[] {
            new SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, false, ((byte)(0)), ((byte)(0)), "", System.Data.DataRowVersion.Current, null),
            new SqlParameter("@Codigo", System.Data.SqlDbType.VarChar, 30),
            new SqlParameter("@Estado", System.Data.SqlDbType.Int, 4)});
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
        }
       //Ejecucion
        public void metActivarActualizarEstado(string Codigo,int Estado)
        {
            SqlProAdaptador.SelectCommand.Parameters["@Codigo"].Value = Codigo;////////////Observacion de la cancelacion
            SqlProAdaptador.SelectCommand.Parameters["@Estado"].Value = Estado;
            SqlProConexion.Open();///////////////////////////////////////////////////Abrir la coneccion
            try
            {
                SqlProAdaptador.SelectCommand.ExecuteNonQuery();//Ejecuta el procedmiento almacenado
            }
            catch (Exception M)
            {
                MessageBox.Show(M.Message);//Aqui se presenta los mensajes que la ejecucion del metodo 
                //haya generado 
            }
            SqlProConexion.Close();//Es importante cerrar la coneccion para evitar embotellamientos
      
        }
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
       //Presentar registros asignados

        public void metConfigurarRegistrosInactivos(string Conexion)
        {
            this.SqlProSeleccionar = new SqlCommand();
            this.SqlProAdaptador = new SqlDataAdapter();
            this.SqlProConexion = new SqlConnection();
            // 
            // SqlProSeleccionar
            // 
            this.SqlProSeleccionar.CommandText = "SELECT        vs_MostrarRegistrosServiciosInactivos.*\r\nFROM            vs_MostrarRegistrosServiciosInactivos";
            this.SqlProSeleccionar.Connection = this.SqlProConexion;
            // 
            // SqlProAdaptador
            // 
            this.SqlProAdaptador.SelectCommand = this.SqlProSeleccionar;
            // 
            // SqlProConexion
            // 
            this.SqlProConexion.ConnectionString = Conexion;
        }
       //Ejecucion
        public void metActivarRegistrosInactivos(ColeccionDeDatos Col)
        {
            SqlProAdaptador.Fill(Col.vs_MostrarRegistrosServiciosInactivos);
        }

    }
}
